import { createStore } from 'vuex'// 导入vuex
import createPersistedstate from 'vuex-persistedstate'// 导入持久化插件

import user from './user'// 导入用户模块
import cart from './cart'// 导入购物车模块
import global from './global'// 导入全剧以模块
export default createStore({
  // 全局模块配置
  ...global,
  // 局部模块配置
  modules: {
    user,
    cart
  },
  //  默认是存储在localStorage中
  //  key是存储数据的键名
  //  paths是存储state中的那些数据，如果是模块下具体的数据需要加上模块名称，如`user.token`
  //  修改state后触发才可以看到本地存储数据的的变化。
  plugins: [
    createPersistedstate({
      key: 'erabbit-client-pc-store',
      paths: ['user', 'cart']
    })
  ]
})
